<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html lang="en">
<head>
<meta name="copyright" content="Copyright (c) 2022 IBM Corporation and others. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="STYLESHEET" href="../../book.css" charset="ISO-8859-1" type="text/css">
<title>Incompatibilities between Eclipse 4.24 and 4.25</title>
</head>
<body>
<h1>Incompatibilities between Eclipse 4.24 and 4.25</h1>

<p>
  Eclipse changed in incompatible ways between 4.24 and 4.25 in ways that affect
  plug-ins. The following entries describe the areas that changed and provide
  instructions for migrating 4.24 plug-ins to 4.25. Note that you only need to look
  here if you are experiencing problems running your 4.24 plug-in on 4.25.
</p>
<p>
See also the list of <a href="../removals.html">deprecated API removals</a> for this release.
</p>


<ol>
<li><a href="#upstream-bundles">Several bundles renamed for 3rd party libraries</a></li>
<li><a href="#icu4j-change">Different Import-Package version for some 3rd party libraries</a></li>
</ol>

<hr>

<!-- ############################################## -->

<h2>1. <a name="upstream-bundles">Different providers for 3rd party packages may result on unmatched Required-Bundle</a></h2>
<p><strong>What is affected:</strong> Clients that use <code>Require-Bundle</code> with a bundle that was replaced in their target platform.
<ul>
<li>JUnit 5 bundles now have name of the form <code>junit-*</code> instead of Orbit variants <code>org.junit.*</code>,</li>
<li>API Guardian bundle is now named <code>org.apiguardian.api</code> instead of Orbit variant <code>org.apiguardian</code>,</li>
<li>BouncyCastle bundles are now directly named <code>bcprog</code> and <code>bcpg</code> directly instead of Orbit variants <code>org.bouncycastle.*</code>,</li>
<li>JSP API bundles is now named <code>javax.servlet.jsp-api</code> instead of Orbit variant <code>javax.servlet.jsp</code>
</ul>
</p>
<p><strong>Description:</strong></p>
<p>
Upstream bundles as officially provided by the 3rd-party projects are not shipped by default by Platform instead of Orbit's one. In some cases, the bundle has
a different Bundle-SymbolicName than the legacy one.
</p>
<p>
As a result, some Require-Bundle requirements that used to be satisfied using Orbit-provided bundles may now not be satisfied with upstream
bundles, preventing proper installation or execution.
</p>
<p><strong>Action required:</strong></p>
<ol>
	<li>Replace usage of Require-Bundle by Import-Package which will pick the best provider available in target-platfrm, or</li>
	<li>Adjust Require-Bundle directives in MANIFEST.MF for the affected bundles, replacing with newer variants, or</li>
	<li>Adjust your target-platform so it includes the legacy Orbit variants for the mentioned bundles</li>
</ol>

<h2>2. <a name="icu4j-change">Different providers for 3rd party packages may result on unmatched Import-Package requirements</a></h2>
<p><strong>What is affected:</strong> Clients that use <code>Import-Package</code> with a version requirement for some 3rd-party packages:
<ul>
<li>com.ibm.icu</li>
</ul>
</p>
<p><strong>Description:</strong></p>
<p>
Upstream bundles as provided by the 3rd-party projects are not shipped by default by Platform instead of Orbit's one. Orbit usually add
a version on package exports; this version does not match what upstream projects define.
</p>
<p>
As a result, some Import-Package requirements that used to be satisfied using Orbit-provided bundles may now not be satisfied with upstream
bundles, preventing proper installation or execution.
</p>
<p><strong>Action required:</strong></p>
<ol>
	<li>Adjust Import-Pacakge directives in MANIFEST.MF for the affected packages, either by removing the version requirement or by fixing it according to new upstream provider (recommended), or</li>
	<li>Update your build script and other package definition to force inclusion of legacy Orbit-provided bundles</li>
</ol>

</body>
</html>
